import {reqGoodsList} from '../../api/index';
Page({

    //初始化参数
    data: {
        page: 1,
        limit: 10,
        category2Id: '',
        //存储对应商品的数据
        goodArr: [],
        status: "", //控制到底要不要再发请求 more nomore
    },
    //当商品列表页面加载时候先获取一次商品列表(1|10)
    onLoad(option) {
       //如果是从分类而来需要存储二级分类的id
       this.setData({
           category2Id:option.category2Id||""
       })
        //获取商品列表
        this.getGoodsList();
    },
    //功能函数:获取商品列表方法
    async getGoodsList() {
        const {page,limit,category2Id} = this.data;
        const result = await reqGoodsList(page, limit, category2Id);
        //修改status的状态数值:需要判断有没有下一次请求
        if (result.data.records.length < 10) {
            //修改状态:第一次返回四个,没有更多
            this.setData({
                status: 'nomore'
            })
        } else {
            this.setData({
                status: 'more'
            })
        }
       //存储新的商品之前:需要与老的商品的数组合并
       const goodArr = this.data.goodArr;
       //...是把服务器返回的数组[{},{}...]，展开push到数数组里面！！！
       goodArr.push(...result.data.records);
        //存储商品的数据
        this.setData({
            goodArr
        })
    },
    //页面触底的监听事件
    onReachBottom() {
        //判断:触底的时候状态more
        if(this.data.status=='more'){
            //参数:当前页码+1
            this.setData({
                page:this.data.page + 1
            });
            //再次发请求，获取下一页
            this.getGoodsList();
        }
    }
})